home *** CD-ROM | disk | FTP | other *** search
/ The Programmer Disk / The Programmer Disk (Microforum).iso / xpro / basic3 / pro5 / trigfunc.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1990-06-20  |  4.7 KB  |  112 lines

  1. 10  CLS:KEY OFF
  2. 20  LOCATE 7,18:COLOR 9:PRINT"DEGREE TO TRIG FUNCTION CONVERTER":COLOR 5
  3. 30  LOCATE 10,21:PRINT" Enter [";:COLOR 1:PRINT"1";:COLOR 5:PRINT"] for sine of +
  4. 40  LOCATE 11,21:PRINT" Enter [";:COLOR 2:PRINT"2";:COLOR 5:PRINT"] for cosine of +
  5. 50  LOCATE 12,21:PRINT" Enter [";:COLOR 3:PRINT"3";:COLOR 5:PRINT"] for tangent of +
  6. 60  LOCATE 13,21:PRINT" Enter [";:COLOR 4:PRINT"4";:COLOR 5:PRINT"] for cosecant of +
  7. 70  LOCATE 14,21:PRINT" Enter [";:COLOR 8:PRINT"5";:COLOR 5:PRINT"] for secant of +
  8. 80  LOCATE 15,21:PRINT" Enter [";:COLOR 6:PRINT"6";:COLOR 5:PRINT"] for cotangent of +
  9. 90  LOCATE 16,21:PRINT" Enter [";:COLOR 7:PRINT"7";:COLOR 5:PRINT"] to save any changes
  10. 91  LOCATE 17,21:PRINT" Enter [";:COLOR 20:PRINT"8";:COLOR 5:PRINT"] to exit program
  11. 100  C$=INKEY$
  12. 110  C=VAL(C$)
  13. 120  ON C GOTO 140,260,380,500,640,760,880,980
  14. 130  GOTO 100
  15. 140  ' ================================================================
  16. 150  '                      Sine of + routine
  17. 160  ' ================================================================
  18. 170  CLS:COLOR 1:LOCATE 8,3:INPUT"What is the sine of ";A
  19. 180  X= SIN(A/57.3):S = X
  20. 190  GOSUB 1060
  21. 200  IF S < -50 OR S > 50 THEN GOSUB 1110
  22. 210  COLOR 15:LOCATE 10,3:PRINT"The sine of "A" is "S".":COLOR 5
  23. 220  LOCATE 12,3:PRINT"<G> For Another Conversion  <M> To Return to Menu"
  24. 230  SN$=INKEY$:IF SN$="G" OR SN$="g" THEN 170
  25. 240  IF SN$="M" OR SN$="m" THEN 10
  26. 250  GOTO 230
  27. 260  ' ====================================================================
  28. 270  '                       Cosine of + routine
  29. 280  ' ====================================================================
  30. 290  CLS:COLOR 2:LOCATE 8,3:INPUT"What is the cosine of ";A
  31. 300  X = COS(A/57.3):S = X
  32. 310  GOSUB 1060
  33. 320  IF S < -50 OR S > 50 THEN GOSUB 1110
  34. 330  COLOR 15:LOCATE 10,3:PRINT"The cosine of "A" is "S".":COLOR 5
  35. 340  LOCATE 12,3:PRINT"<G> For Another Conversion  <M> To Return to Menu"
  36. 350  OS$=INKEY$:IF OS$="G" OR OS$="g" THEN 290
  37. 360  IF OS$="M" OR OS$="m" THEN 10
  38. 370  GOTO 350
  39. 380  ' ====================================================================
  40. 390  '                       Tangent of + routine
  41. 400  ' =====================================================================
  42. 410  CLS:COLOR 3:LOCATE 8,3:INPUT"What is the tangent (tan) of ";A
  43. 420  X = TAN(A/57.3):S = X
  44. 430  GOSUB 1060
  45. 440  IF S < -50 OR S > 50 THEN GOSUB 1110
  46. 450  COLOR 15:LOCATE 10,3:PRINT"The tangent of "A" is "S".":COLOR 5
  47. 460  LOCATE 12,3:PRINT"Press [T] for another Conversion   [R] to Return to menu"
  48. 470  TN$=INKEY$:IF TN$="T" OR TN$="t" THEN 410
  49. 480  IF TN$="R" OR TN$="r" THEN 10
  50. 490  GOTO 470
  51. 500  ' =======================================================================
  52. 510  '                      Cosecant of + routine
  53. 520  ' =======================================================================
  54. 530  CLS:COLOR 4:LOCATE 8,3:INPUT"What is the cosecant [1/sin] of ";A
  55. 540  X = 1/SIN(A/57.3): S=X
  56. 550  GOSUB 1060
  57. 560  IF S < -50 OR S > 50 THEN GOSUB 1110
  58. 570  COLOR 15:LOCATE 10,3:PRINT"The cosecant (csc) of "A" is "S".":COLOR 5
  59. 580  LOCATE 12,3:PRINT"ENTER (1) FOR ANOTHER CONVERSION   (2) TO RETURN TO MENU"
  60. 590  CS$=INKEY$
  61. 600  CS = VAL(CS$)
  62. 610  IF CS = 1 THEN 530
  63. 620  IF CS = 2 THEN 10
  64. 630  GOTO 590
  65. 640  ' ========================================================================
  66. 650  '                        secant of + routine
  67. 660  ' ========================================================================
  68. 670  CLS:COLOR 8:LOCATE 8,3:INPUT"What is the secant (1/cos) of ";A
  69. 680  X = 1/COS(A/57.3): S=X
  70. 690  GOSUB 1060
  71. 700  IF S < -50 OR S > 50 THEN GOSUB 1110
  72. 710  COLOR 15:LOCATE 10,3:PRINT"The secant (sec) of "A" is "S".":COLOR 5
  73. 720  LOCATE 12,3:PRINT"Press (G) for another degree to secant conversion  (M) to return to menu."
  74. 730  SEC$=INKEY$:IF SEC$="G" OR SEC$="g" THEN 670
  75. 740  IF SEC$="M" OR SEC$="m" THEN 10
  76. 750  GOTO 730
  77. 760  ' ========================================================================
  78. 770  '                         cotangent of + routine
  79. 780  ' ========================================================================
  80. 790  CLS:COLOR 6:LOCATE 8,3:INPUT"What is the cotangent (1/tan) of ";A
  81. 800  X = 1/TAN(A/57.3): S=X
  82. 810  GOSUB 1060
  83. 820  IF S < -50 OR S > 50 THEN GOSUB 1110
  84. 830  COLOR 15:LOCATE 10,3:PRINT"The cotangent (cot) of "A" is "S".":COLOR 5
  85. 840  LOCATE 12,3:PRINT"Press (G) for another degree to cotangent conversion  (R) to Return to menu."
  86. 850  COT$=INKEY$:IF COT$="G" OR COT$="g" THEN 790
  87. 860  IF COT$="R" OR COT$="r" THEN 10
  88. 870  GOTO 850
  89. 880  ' ================================================================
  90. 890  '                   Save and Exit Routines
  91. 900  ' ================================================================
  92. 950  CLS:LOCATE 10,21:COLOR 7:PRINT"One moment while I save changes . . . "
  93. 960  LOCATE 18,52:COLOR 25:PRINT" . . . saving":COLOR 5
  94. 970  BEEP:SAVE"TRIGFUNC.BAS"
  95. 975  GOTO 10
  96. 980  CLS:COLOR 9:LOCATE 8,18:PRINT"Do you now wish to ";CHR$(34);"    ";CHR$(34);" this program?"
  97. 981  LOCATE 8,38:COLOR 18:PRINT"exit":COLOR 5
  98. 990  S$=INKEY$:IF S$="Y" OR S$ = "y" THEN 1020
  99. 1000  IF S$="N" OR S$ = "n" THEN 10
  100. 1010  GOTO 990
  101. 1020  CLS:RUN"files."
  102. 1030  ' ----------------------------------------------------------------
  103. 1040  '                Math Function Subroutine
  104. 1050  ' ----------------------------------------------------------------
  105. 1060  S = INT((X + 4.9999E-05)*10000)/10000
  106. 1070  RETURN
  107. 1080  ' --------------------------------------------------------------------
  108. 1090  '                8642.408 Function Call Notice
  109. 1100  ' --------------------------------------------------------------------
  110. 1110  BEEP:LOCATE 24,3:PRINT"This function is " ;:COLOR 31:PRINT"UNDEFINED";:COLOR 5:PRINT"."
  111. 1120  RETURN
  112.